﻿namespace MicroCloud.SMS.Dtos
{
    /// <summary>
    /// 输出DTO：验证码短信记录
    /// </summary>
    public class VerifyCodeOutputDto : IOutputDto
    {
        #region "属性"
        #region "获取或设置 编号"
        /// <summary>
        /// 获取或设置 编号
        /// </summary>
        [DisplayName("编号")]
        public long Id { get; set; }
        #endregion

        #region "获取或设置 服务提供商"
        /// <summary>
        /// 获取或设置 服务提供商
        /// </summary>
        [DisplayName("服务提供商")]
        public SmsProvider Provider { get; set; }
        #endregion
        #region "获取或设置 短信签名名称"
        /// <summary>
        /// 获取或设置 短信签名名称
        /// </summary>
        [DisplayName("短信签名名称")]
        public string SignName { get; set; }
        #endregion
        #region "获取或设置 短信模板ID"
        /// <summary>
        /// 获取或设置 短信模板ID
        /// </summary>
        [DisplayName("短信模板ID")]
        public string TemplateCode { get; set; }
        #endregion

        #region "获取或设置 发送回执ID"
        /// <summary>
        /// 获取或设置 发送回执ID
        /// </summary>
        [DisplayName("发送回执ID")]
        public string BizId { get; set; }
        #endregion
        #region "获取或设置 请求ID"
        /// <summary>
        /// 获取或设置 请求ID
        /// </summary>
        [DisplayName("请求ID")]
        public string RequestId { get; set; }
        #endregion
        #region "获取或设置 外部流水扩展字段"
        /// <summary>
        /// 获取或设置 外部流水扩展字段
        /// </summary>
        [DisplayName("外部流水扩展字段")]
        public string OutId { get; set; }
        #endregion

        #region "获取或设置 手机号码"
        /// <summary>
        /// 获取或设置 手机号码
        /// </summary>
        [DisplayName("手机号码")]
        public string PhoneNumber { get; set; }
        #endregion

        #region "获取或设置 发送日期"
        /// <summary>
        /// 获取或设置 发送日期
        /// </summary>
        [DisplayName("发送日期")]
        public DateTime SendDate { get; set; }
        #endregion
        #region "获取或设置 接收日期"
        /// <summary>
        /// 获取或设置 接收日期
        /// </summary>
        [DisplayName("接收日期")]
        public DateTime ReceiveDate { get; set; }
        #endregion

        #region "获取或设置 有效期分钟数"
        /// <summary>
        /// 获取或设置 有效期分钟数
        /// </summary>
        [DisplayName("有效期分钟数")]
        public decimal ExpireMins { get; set; }
        #endregion
        #region "获取或设置 是否已验证"
        /// <summary>
        /// 获取或设置 是否已验证
        /// </summary>
        [DisplayName("已验证")]
        public bool Verified { get; set; }
        #endregion
        #region "获取或设置 验证时间"
        /// <summary>
        /// 获取或设置 验证时间
        /// </summary>
        [DisplayName("验证时间")]
        public DateTime? VerifiedTime { get; set; }
        #endregion

        #region "获取或设置 创建时间"
        /// <summary>
        /// 获取或设置 创建时间
        /// </summary>
        [DisplayName("创建时间")]
        public DateTime CreatedTime { get; set; }
        #endregion

        #endregion

    }

}
